package com.dffl.es.esstudy.document;

import io.swagger.annotations.ApiModelProperty;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

public class EsPrice implements Serializable {
    private Long id;

    @ApiModelProperty(value = "主档sku id")
    private Long skuId;

    @ApiModelProperty(value = "deprecated!商家档id")
    private Long merchantSkuId;

    @ApiModelProperty(value = "deprecated!商家code")
    private String merchantId;

    @ApiModelProperty(value = "供应商id")
    private String supplierId;

    @ApiModelProperty(value = "调价单编号")
    private String documentNo;

    @ApiModelProperty(value = "前台分类")
    private Long frontCategoryId;

    @ApiModelProperty(value = "频道")
    private String channel;

    @ApiModelProperty(value = "1：进价；2：售价")
    private Integer priceCatalog;

    @ApiModelProperty(value = "价格类型（1：永久价格；2：临时价格）")
    private Integer priceType;

    @ApiModelProperty(value = "价格")
    private BigDecimal price;

    @ApiModelProperty(value = "临时价格生效时间")
    private Date effectTime;

    @ApiModelProperty(value = "临时价格过期时间")
    private Date expiredTime;

    @ApiModelProperty(value = "状态（0：无效；1：有效）")
    private Integer status;

    @ApiModelProperty(value = "创建者")
    private Integer creator;

    @ApiModelProperty(value = "修改者")
    private Integer modifier;

    @ApiModelProperty(value = "创建时间")
    private Date createdAt;

    @ApiModelProperty(value = "更新时间")
    private Date updatedAt;

    @ApiModelProperty(value = "城市id")
    private Integer cityId;

    @ApiModelProperty(value = "运费")
    private BigDecimal freight;

    private static final long serialVersionUID = 1L;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getSkuId() {
        return skuId;
    }

    public void setSkuId(Long skuId) {
        this.skuId = skuId;
    }

    public Long getMerchantSkuId() {
        return merchantSkuId;
    }

    public void setMerchantSkuId(Long merchantSkuId) {
        this.merchantSkuId = merchantSkuId;
    }

    public String getMerchantId() {
        return merchantId;
    }

    public void setMerchantId(String merchantId) {
        this.merchantId = merchantId;
    }

    public String getSupplierId() {
        return supplierId;
    }

    public void setSupplierId(String supplierId) {
        this.supplierId = supplierId;
    }

    public String getDocumentNo() {
        return documentNo;
    }

    public void setDocumentNo(String documentNo) {
        this.documentNo = documentNo;
    }

    public Long getFrontCategoryId() {
        return frontCategoryId;
    }

    public void setFrontCategoryId(Long frontCategoryId) {
        this.frontCategoryId = frontCategoryId;
    }

    public String getChannel() {
        return channel;
    }

    public void setChannel(String channel) {
        this.channel = channel;
    }

    public Integer getPriceCatalog() {
        return priceCatalog;
    }

    public void setPriceCatalog(Integer priceCatalog) {
        this.priceCatalog = priceCatalog;
    }

    public Integer getPriceType() {
        return priceType;
    }

    public void setPriceType(Integer priceType) {
        this.priceType = priceType;
    }

    public BigDecimal getPrice() {
        return price;
    }

    public void setPrice(BigDecimal price) {
        this.price = price;
    }

    public Date getEffectTime() {
        return effectTime;
    }

    public void setEffectTime(Date effectTime) {
        this.effectTime = effectTime;
    }

    public Date getExpiredTime() {
        return expiredTime;
    }

    public void setExpiredTime(Date expiredTime) {
        this.expiredTime = expiredTime;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public Integer getCreator() {
        return creator;
    }

    public void setCreator(Integer creator) {
        this.creator = creator;
    }

    public Integer getModifier() {
        return modifier;
    }

    public void setModifier(Integer modifier) {
        this.modifier = modifier;
    }

    public Date getCreatedAt() {
        return createdAt;
    }

    public void setCreatedAt(Date createdAt) {
        this.createdAt = createdAt;
    }

    public Date getUpdatedAt() {
        return updatedAt;
    }

    public void setUpdatedAt(Date updatedAt) {
        this.updatedAt = updatedAt;
    }

    public Integer getCityId() {
        return cityId;
    }

    public void setCityId(Integer cityId) {
        this.cityId = cityId;
    }

    public BigDecimal getFreight() {
        return freight;
    }

    public void setFreight(BigDecimal freight) {
        this.freight = freight;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", skuId=").append(skuId);
        sb.append(", merchantSkuId=").append(merchantSkuId);
        sb.append(", merchantId=").append(merchantId);
        sb.append(", supplierId=").append(supplierId);
        sb.append(", documentNo=").append(documentNo);
        sb.append(", frontCategoryId=").append(frontCategoryId);
        sb.append(", channel=").append(channel);
        sb.append(", priceCatalog=").append(priceCatalog);
        sb.append(", priceType=").append(priceType);
        sb.append(", price=").append(price);
        sb.append(", effectTime=").append(effectTime);
        sb.append(", expiredTime=").append(expiredTime);
        sb.append(", status=").append(status);
        sb.append(", creator=").append(creator);
        sb.append(", modifier=").append(modifier);
        sb.append(", createdAt=").append(createdAt);
        sb.append(", updatedAt=").append(updatedAt);
        sb.append(", cityId=").append(cityId);
        sb.append(", freight=").append(freight);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }
}
